Implantable medical devices for producing a therapeutic result in a patient are well known. Examples of such implantable medical devices include implantable drug infusion pumps, implantable neurostimulators, implantable cardioverters, implantable cardiac pacemakers, implantable defibrillators and cochlear implants. Some of these devices, if not all, and other devices either provide an electrical output or otherwise contain electrical circuitry to perform their intended function.
Typically, an external device, commonly known as a programmer, is used to interface with an implanted medical device using a communication scheme, usually called telemetry. Such an external programmer can be used for any number of tasks associated with an implanted medical, including, but not limited to, obtaining information about the condition, state or status of the implanted medical device, obtaining information about the patient, including information related to the treatment intended to be provided by the implanted medical device, sending information directed or, at least in part, specifying the treatment parameters and conditions being or to be provided by the implanted medical device, sending or updating maintenance information concerning the implanted medical device. In short, an external programmer is intended to perform any and all communication functions necessary or desired with an implanted medical device which otherwise could be done more directed if the medical device were not implanted.
Such an external programming device may typically consist of several different components performing several different functions. The external programming device may have a telemetry module containing components necessary for conducting the communication protocol with the implanted medical device. Many different telemetry communication protocols exist and the external programming device contains the external circuitry necessary to provide such transcutaneous communication. The external programmer can also contain the necessary interface for the user of the programmer. Typically, the user interface will consist of control inputs and information outputs. Control inputs can consist of buttons, discrete or soft, screen inputs (cursor, mouse, trackball, pointer, etc.), text input, voice input, and other well known input techniques. Information outputs may typically consist of well known outputs such as visual, auditory or tactile, including lights, screens, including liquid crystal display screens or light emitting diode displays, icons, text, synthesized voice, graphs, colors and the like. The external programmer will typically also contain programming instructions for generating and processing the user interface and processing information received from the implanted medical device and generating commands or information to be sent to the implanted medical device. Typically, these programming instructions are contained in program code which is executed in some form of processing module, or CPU.
As can be seen, an external programmer can be quite complex. Further, it is desirable to make the external programmer generally portable for that the programmer can easily be used in the proximity of the patient having the implanted medical device. Ease of portability generally means relatively small size and weight.
Further, different implantable medical devices have differing telemetry protocol communication schemes. And the user interface and the programming logic of the external programmer will also typically vary among differing implantable medical devices.
The competing needs of portability and complex function generally have meant that external programmers have been individually developed for each specific implantable medical device. That is, an external programmer developed for one implantable medical device won't necessarily work advantageously for a different type of implantable medical device.
The cost necessary to develop an individual external programmer for each type of implantable medical device needlessly adds to the cost of medical treatment. The time and resources necessary to develop an individual external programmer may slow the availability of medical treatment to the patient.
U.S. Pat. No. 5,720,770, Nappholz et al, Cardiac Stimulation System With Enhanced Communication and Control Capability, discloses a cardiac stimulation system is provided which delivers long term cardiac therapy without a personal supervision by a physician. The system includes a cardiac stimulation device implanted in a patient and an external device in constant or periodic communication with the cardiac device. The external device is used to control the pacemaker operation. The external device receives updates of the condition of the patient and the operation of the cardiac device and the therapy provided by the cardiac device. This information is transmitted by the external device over a standard telephone network which may consist of hardwired network, a cellular network, or a combination thereof to a remote control device operating near the physician and/or a monitoring station used for monitoring and data logging information from a plurality of patients. The cardiac device, through the external device can also communicate directly and exchange information with the patient over an RF channel. Finally, the external device may be provided with ground position indication system for locating the patient geographically in an emergency.
U.S. Pat. No. 6,263,245, Snell, System and Method for Portable Implantable Device Interrogation, discloses a system and method for obtaining data from an implantable medical device and delivering the data to a data processing device. A portable interrogation device conducts a wireless interrogation of an implantable medical device implanted in a patient and stores the data received from the implantable medical device in a memory of the portable interrogation device. At a later time, the portable interrogation device is directly interfaced with a data processing device using a high-speed connection, which provides the data processing device with high-speed access to the interrogated data that is stored in the portable interrogation device's memory.
U.S. Pat. No. 6,641,533, Causey et al, Handheld Personal Data Assistant With a Medical Device and Method of Using Same, discloses a medical device module for use in a system with a remote programmer and/or a personal data assistant (PDA) with at least one medical device includes a housing, at least one medical device and a processor. The housing is adapted to couple with the PDA. The at least one medical device interface is coupled to the housing for interfacing with the at least one medical device. The processor is coupled to the at least one medical device interface to process data from the at least one medical device. The processor is also capable of interfacing with the PDA.
U.S. Pat. No. 6,780,156, Haueter et al, Module For a Computer Interface, discloses a module for a computer interface including a transducer wherein the transducer receives a measurement and makes this measurement value available for monitoring an individual's health by means of a computer interface, for example, for monitoring an individual's blood glucose level, wherein the measurement value is obtained by means of a sensor.
PCT Patent Application No. WO 01/052934, Medtronic, System and Method For Communicating Between an Implantable Medical Device and a Remote Computer System or Health Care Provider, discloses a medical information communication system. The system permits monitoring the performance of an implantable medical device implanted within the body of a patient, monitoring the health of the patient, or remotely delivering a therapy to the patient through the implantable medical device. The implantable medical device is capable of bidirectional communication with a communication module, a mobile telephone or a personal data assistant located outside of the patient's body.
PCT Patent Application No. WO 03/095024, Medtronic, Seamless Communication Between an Implantable Medical Device and a Remote System, discloses a communications scheme in which a remote computer or computer system, or a remote health care provider, communicates with an implantable medical device implanted within a patient by communicating through a mobile telephone and/or PDA and a communication module located near the patient, where the communication module is operatively connected to the mobile telephone and/or PDA and is capable of telemetrically uploading and downloading information to and from the implantable medical device, and thence via the mobile telephone or PDA to the remote computer or health care provider. In some embodiments, communications between the remote computer system or remote health care provider and the implantable medical device include remotely debugging, updating or installing new software in the implantable medical device or the communication module.
PCT Patent Application No. WO 93/09841, Cyberonics, Activation Techniques for Implantable Medical Device, discloses apparatus and techniques for activating an implantable medical device, such as a neurostimulator adapted to treat and control a disorder by a patient where the disorder is susceptible to relief in response to a predetermined modulation of the electrical activity of a selected nerve or group of nerves of a patient. The neurostimulator includes a stimulus generator, when activated, to generate a programmable electrical waveform, and an electrode array electrically connected to the stimulus generator for delivering the selected waveform to a selected nerve of the patient, such as the vagus nerve. The neurostimulator is also adapted to be programmed to provide the waveform with parameter values selected to stimulate the selected nerve to produce the predetermined modulation of the nerve's electrical activity. The neurostimulator is activated to respond to a patient initiated signal which may be derived either manually or automatically to selectively activate the stimulus parameter.
The use general purpose computing devices to program implanted medical devices is also problematic. If a general purpose computing device is utilized, the medical device manufacturer may lose control over the device programming environment. The specific character of the general computing device is not known and it is not known what other programs may exist on the general computing device or the security of the general computing device.